package com.ynet.middleground.riskmanage.entity;

import java.io.Serializable;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 八戒财税验证-发票基础信息
 * </p>
 *
 * @author liulx
 * @since 2020-08-03
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("rm_zbj_invoice_base")
public class ZbjInvoiceBase extends Model<ZbjInvoiceBase> {

    private static final long serialVersionUID = 1L;

    /**
     * 编号
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 请求记录 id
     */
    private Integer reqId;

    /**
     * 发票代码
     */
    private String fpdm;

    /**
     * 发票类型
     */
    private String fplx;

    /**
     * 发票号码
     */
    private String fphm;

    /**
     * 开票日期
     */
    private String kprq;

    /**
     * 销售方名称
     */
    private String xfMc;

    /**
     * 销售方纳税人识别号
     */
    private String xfNsrsbh;

    /**
     * 销售方联系方式
     */
    private String xfContact;

    /**
     * 销售方开户行
     */
    private String xfBank;

    /**
     * 购方名称
     */
    private String gfMc;

    /**
     * 购方纳税人识别号
     */
    private String gfNsrsbh;

    /**
     * 购方联系方式
     */
    private String gfContact;

    /**
     * 购方开户行
     */
    private String gfBank;

    /**
     * 发票校验码
     */
    private String code;

    /**
     * 发票机器码
     */
    private String num;

    /**
     * 是否作废(String 0 未作废|2 已作废|3 红冲发票)
     */
    private String del;

    /**
     * 是否成品油发票(Boolean true|false)
     */
    private Boolean isOil;

    /**
     * 税额合计
     */
    private String taxamount;

    /**
     * 价格合计
     */
    private String goodsamount;

    /**
     * 价税合计
     */
    private String sumamount;

    /**
     * 数量合计
     */
    private String quantityAmount;

    /**
     * 更新时间
     */
    private String updateTime;

    /**
     * 税局查验次数
     */
    private String queryCount;

    /**
     * 备注
     */
    private String remark;

    /**
     * 是否含销货清单票(String Y|N)
     */
    private String isGoodsList;

    /**
     * 名称-商品统计信息
     */
    private String name;

    /**
     * 规格-商品统计信息
     */
    private String spec;

    /**
     * 单位-商品统计信息
     */
    private String unit;

    /**
     * 数量-商品统计信息
     */
    private String amount;

    /**
     * 单价-商品统计信息
     */
    private String priceUnit;

    /**
     * 金额-商品统计信息
     */
    private String priceSum;

    /**
     * 税率-商品统计信息
     */
    private String taxRate;

    /**
     * 税额-商品统计信息
     */
    private String taxSum;

    /**
     * 渠道
     */
    private String channel;

    /**
     * 创建时间
     */
    private LocalDateTime gmtCreate;

    /**
     * 创建者
     */
    private Integer createBy;

    /**
     * 更新时间
     */
    private LocalDateTime gmtModified;

    /**
     * 更新者
     */
    private Integer modifiedBy;

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
